]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
messageList: Only apply special styling to symbolic icons
authorFlorian Müllner <fmuellner@gnome.org>
Thu, 2 May 2024 17:53:04 +0000 (19:53 +0200)
committerMarge Bot <marge-bot@gnome.org>
Thu, 9 May 2024 17:47:32 +0000 (17:47 +0000)
The styling introduced in commit 8fed0b83d was only intended
for symbolics, it looks weird when applied to full-color icons.

So instead of using the GIcon type, apply the special styling
based on the new StIcon:is-symbolic property.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/7620
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3296>

js/ui/messageList.js

index dda9f22a9b96dbaaa20d3c0623bda22193250c36..c3039e0202b8e88423deaad01501d8b2fb66779a 100644 (file)
@@ -478,6 +478,13 @@ export const Message = GObject.registerClass({
         });
         hbox.add_child(this._icon);
 
+        this._icon.connect('notify::is-symbolic', () => {
+            if (this._icon.is_symbolic)
+                this._icon.add_style_class_name('message-themed-icon');
+            else
+                this._icon.remove_style_class_name('message-themed-icon');
+        });
+
         const contentBox = new St.BoxLayout({
             style_class: 'message-content',
             vertical: true,
@@ -534,11 +541,6 @@ export const Message = GObject.registerClass({
     set icon(icon) {
         this._icon.gicon = icon;
 
-        if (icon instanceof Gio.ThemedIcon)
-            this._icon.add_style_class_name('message-themed-icon');
-        else
-            this._icon.remove_style_class_name('message-themed-icon');
-
         this._icon.visible = !!icon;
         this.notify('icon');
     }